我在IB中设置约束,例如但是当我在iPhone4上运行该应用程序时,它显示为什么最后三个按钮在iPhone4屏幕上没有正确显示?我的约束有什么错误吗?编辑:-这是我的View层次结构:-UITabbarControlle->UINavigationController->UIViewController标签栏Controller是rootviewcontroller。编辑:-仅供引用,屏幕上没有任何约束的影响(基本上自动布局对我不起作用)。 最佳答案 您在4英寸上设计了按钮,但在3.5英寸上没有足够的空间容纳所有按钮。一种方法是将S
有没有一种方法可以在某个范围内指定Autolayout的约束。例如,我希望两个元素之间的垂直间距不超过100点且不低于70点。有没有一种方法可以指定这种类型的东西。 最佳答案 你当然可以。只需创建2个具有不同关系的约束: 关于ios-限制某些范围之间的自动布局约束,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/24751839/
不确定这是一个错误还是我只是愚蠢但开始讨厌自动布局和约束。我在设计View和预览中看到的与在模拟器或设备上看到的不同。例如设计View和预览View这正是我想要的样子......哇哦哦你会想一旦我在模拟器或我的iPad上运行它看起来像这样请注意,ihaveadream图像似乎与View的顶部对齐,而不是应与蓝色View的底部对齐。这些是我的设置所以我是白痴还是这是个错误? 最佳答案 根据depicus选择“clipsubviews”选项解决了这个问题。所以发生的事情是约束是正确的,UIImageView的大小也是正确的,但是图像被绘
我在使用约束时遇到问题。我想在UITableViewCell中将两个UIViews并排放置。它应该是这样的:但是在我添加建议的约束后,或者当我手动添加它们时,单元格总是看起来像这样:为什么会这样?两个UIViews的宽度都应该根据屏幕的宽度灵活调整。有人可以帮助我吗?缺少哪些约束?谢谢! 最佳答案 我认为您需要做的主要事情是在两个View之间添加一个“等宽”约束。如果您使用的是InterfaceBuilder,请按住CTRL并将一个View拖动到另一个View,将出现一个菜单并选择“等宽”。之后,您只需将View边框固定到单元格边框
我有一个相当简单的自定义UITableViewCell子类,其中包含一个UISwitch、UIImageView和UILabel。所有这些都是单元格contentView的subview,并使用AutoLayout进行布局。所有subview都以Y为中心,然后我创建了一系列左右边缘约束以水平排列它们。UILabel是最右边的项目,应该缩放以适应UIImageView的右边缘到它的左边和它的父View的右边缘。当文本太长放不下时,它应该被截断。当我使用适用于iOS7.1的模拟器进行测试时,这按预期工作。但是,在iOS8.1上,当标签中的文本太长而无法容纳分配的空间时,标签会将UIImag
我需要你的帮助来做这个:我有一个宽度等于屏幕宽度的View。在此View中,我有2个subview,宽度为父View的1/2,纵横比为1:1,因此父View的高度应等于subview的高度。之后我需要执行动画,它应该向父View添加另一个View并像这样转换整个屏幕:我应该以编程方式使用自动布局来实现这一点吗?如何让这种行为更容易? 最佳答案 你可以...首先,我不会将它们设为父View的一半,而是:将左View的左边框设置为父View的左边框。将右View的右边框设置为父View的右边框。设置左右View之间的水平间距=0。在左右
我的xiblayoutlikesunderdrawing除了“c”的高度常量之外,我还设置了从“a”到“b”到...“e”的约束,以便可以确定单元格的高度。有时“c”会隐藏,因为某些原因,当标签可见时,我将高度常量更改为零和实际高度。--------------------------------------UILabel(name-singleline)aUILabel(title-Multiline)bUIView(hiddenornot)c(defaultheightconstant=80)-UILabel(contentMultiline)dUILabel(singleline
我正在尝试为portrait和landscape创建具有多个View的iOSstoryboard。我创建的所有Storyboardconstraints和autolayout。现在我的问题是肖像,我需要像下面的肖像图像一样显示。这是我通过使用Storyboard约束完成的。对于横向需要显示第一View(红色)和底栏只有其他我已通过硬编码隐藏。但我不知道如何将红屏第一个View的全高扩展到底部栏顶部。注意:这是通用应用程序。-(void)orientationChanged:(NSNotification*)note{UIDevice*device=note.object;switch(
我需要在我的项目中以编程方式更新约束,以相应地调整View的高度(基于不同的subview)。我已经解除了Controller中的约束,但遇到了问题。当我第一次尝试更新它时(在viewDidLoad或viewWillAppear方法),它没有更新。如果我之后更新它(因为一些轮换等),那么它就正确完成了。请告诉我为什么会发生这种情况以及执行此操作的正确方法/位置是什么?(因为我觉得在viewWillAppear/DidLoad中更新后约束又在某处更新了)。我也尝试了view.layoutIfNeeded但它没有帮助。我想这与viewDidLoad和其他viewController委托(d
我有3个UILabes在彼此之下。第一个的顶部约束是20到superview,第二个是20到firstlabel。第三个是20到second一个。但有时第一和第二标签的文本是空的。我只是想让我的第3个标签成为20到superview,但是当我的约束设置后它变成20+20+20到superview。是否可以只使用Storyboard来解决这个问题,或者我必须使用一些代码。对不起,我的英语不好,请帮帮我。 最佳答案 您可以通过编程方式执行此操作,获取所有标签的Height和TopSpace约束的导出。检查标签文本,如果为空,则将Heig